package com.xlkj.ms.tools.core.request;

import io.swagger.annotations.ApiModelProperty;

/**
 * 带租户，操作者，日志跟踪号的抽象请求类
 * @author zhuqifeng
 * @date 2021/11/10 13:53
 * @package com.xlkj.ms.tools.core.request
 */
public abstract class AbstractTenantRequestWithValidate extends AbstractRequestWithValidate {

    private static final long serialVersionUID = 1290323654924367727L;

    /**
     * 租户id
     * 可以不传，如果不传，将从head中取
     * 如果这里以及head中都没有，那么将会默认为ez
     */
    @ApiModelProperty(value = "租户id", allowableValues = "ez, autoelec", notes = "如果不传，将从header中取（tenant-id）。如果header中也没有，那么将会默认为ez")
    private String tenantId;

    /**
     * 日志跟踪号
     * 如果是非接入slueth的调用方，可以通过该参数进行日志跟踪（唯一性由调用方保证）
     */
    @ApiModelProperty(value = "日志跟踪号", notes = "如果调用方不是接入slueth的，可以通过该参数进行日志跟踪（唯一性由调用方保证）")
    private String cid;

    /**
     * 操作者
     * 如果不传，那么默认是system
     */
    @ApiModelProperty(value = "操作者", notes = "如果不传，将从header中取（对应的key是operator），如果没有，那么默认是system")
    private String operator;

    public String getTenantId() {
        return tenantId;
    }

    public void setTenantId(String tenantId) {
        this.tenantId = tenantId;
    }

    public String getCid() {
        return cid;
    }

    public void setCid(String cid) {
        this.cid = cid;
    }

    public String getOperator() {
        return operator;
    }

    public void setOperator(String operator) {
        this.operator = operator;
    }
}